
import { addCart, getCartNum } from "@/api/ecstore";
import { getwxsign } from "@/api/ecstore";
import store from "@/store";
import { Toast } from "vant";
import { cartAddGoods } from "@/types/reqtypes";
import wx from 'weixin-js-sdk';
const getCookie = (name: string):string => {
  const arr = document.cookie.split('; ');
  for (let i = 0; i < arr.length; i++) {
    const temp = arr[i].split('=');
    if (temp[0] == name) {
      return temp[1];
    }
  }
  return '';
}
//加入购物车
const addGoodsCart = async (goods_id: string, product_id: string,parents_id=''):Promise<void> => {
  if (!getCookie("UNAME")) {
    window.location.href = "http://www.higuang365.com/wap/passport.html";
    return ;
  }
  const cartAddGoods = {
    "goods[goods_id]": goods_id,
    "goods[product_id]": product_id,
    "goods[num]": 1,
    min: 1,
    max: 2,
    mini_cart: true,
  };
  const res = await addCart(cartAddGoods);
  if(res[1].error){
    window.location.href = 'http://www.higuang365.com/wap/passport-signup.html' + (parents_id ?
    '?parents_id=' + parents_id : '');
    return;
  }
  if (res[1].indexOf("成功加入") != -1) {
    Toast("商品成功加入购物车");
    store.dispatch('asyncCartNum');
    return;
  }
    Toast("加入失败！");
  
};
//详情页中的加入购物车

const addBuys = (parents_id: string, goods_id: string, product_id: string):void => {
  if (getCookie("UNAME")) {
    addGoodsCart(goods_id, product_id,product_id);
    //Toast("商品成功加入购物车");
    return;
  }
  window.location.href = 'http://www.higuang365.com/wap/passport-signup.html' + (parents_id ?
    '?parents_id=' + parents_id : '')
};
//立即购买
const goBuys = async (parents_id: string, goods_id: string, product_id: string,fastbuytype=false,num:number):Promise<void> => {
  if (!getCookie("UNAME")) {
    window.location.href = 'http://www.higuang365.com/wap/passport-signup.html' + (parents_id ?
      '?parents_id=' + parents_id : '')
    return;
  }
  const cartAddGoods:cartAddGoods = {
    "goods[goods_id]": goods_id,
    "goods[product_id]": product_id,
    "min": 1,
    "max": 2,
    "mini_cart": true,
    "btype": 'is_fastbuy',
    "goods[num]": num
  };
  fastbuytype?cartAddGoods.fastbuytype="true":'';
  const res = await addCart(cartAddGoods);
  if (res[1].success) {
    window.location.href = res[1].redirect;
    return;
  }
  if(res[1].error){
    window.location.href = 'http://www.higuang365.com/wap/passport-signup.html' + (parents_id ?
    '?parents_id=' + parents_id : '');
    return;
  }
  Toast("商品正在补货中。。。");
    return ;
};
//购物车商品数量
const CartNum = async ():Promise<number> => {
  if(!getCookie("UNAME")){
    return 0;
  }
  const res = await getCartNum({ 'type': 'wap' });
  if (res[1].success) {
    return res[1].msg;
  }
  // Toast(res[1].error);
  return 0;
}
//微信api
const wxapi=async(shareTitle:string,descContent:string,lineLink:string,imgUrl:string):Promise<void>=>{
  const res=await getwxsign({wdurl:location.href.split('#')[0]});
  if(!res[0]){
    return;
  }
  wx.config({
    debug: false,
    appId: res[1].appId,
    timestamp: res[1].timestamp,
    nonceStr: res[1].nonceStr, 
    signature: res[1].signature,
    jsApiList: [
      // 所有要调用的 API 都要加到这个列表中
      'onMenuShareTimeline',
      'onMenuShareAppMessage',
      'onMenuShareQQ',
      'onMenuShareWeibo',
      'checkJsApi',
      'updateAppMessageShareData',
      'updateTimelineShareData',
    ],
  }); 
  wx.ready(function(){
    wx.checkJsApi({
        jsApiList: ['onMenuShareAppMessage','onMenuShareTimeline','onMenuShareQQ','updateAppMessageShareData','updateTimelineShareData'], // 需要检测的JS接口列表，所有JS接口列表见附录2,
            // 以键值对的形式返回，可用的api值true，不可用为false
            // 如：{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
    });
    // 分享给朋友新
  wx.updateAppMessageShareData({
    title: shareTitle, // 分享标题
    desc: descContent, // 分享描述
    link: lineLink, // 分享链接
    imgUrl: imgUrl, // 分享图标
    type: 'link', // 分享类型,music、video或link，不填默认为link
    dataUrl: '', // 如果type是music或video，则要提供数据链接，默认为空
    trigger: function () {
      //用户点击发送给朋友
  },
  success: function () {
      // 用户确认分享后执行的回调函数

  },
  cancel: function () {
      // 用户取消分享后执行的回调函数
  }
    })
    //发送给朋友
    // wx.onMenuShareAppMessage({
    // title: shareTitle, // 分享标题
    // desc: descContent, // 分享描述
    // link: lineLink, // 分享链接
    // imgUrl: imgUrl, // 分享图标
    // type: 'link', // 分享类型,music、video或link，不填默认为link
    // dataUrl: '', // 如果type是music或video，则要提供数据链接，默认为空
    // trigger: function (res) {
    //     //用户点击发送给朋友
    // },
    // success: function () {
    //     // 用户确认分享后执行的回调函数

    // },
    // cancel: function () {
    //     // 用户取消分享后执行的回调函数
    // }
    // });
    //分享到朋友圈
    // wx.onMenuShareTimeline({
    //     title: descContent, // 分享标题
    //     link: lineLink, // 分享链接
    //     imgUrl: imgUrl, // 分享图标
    //     success: function () { 
    //         // 用户确认分享后执行的回调函数
    //     },
    //     cancel: function () { 
    //         // 用户取消分享后执行的回调函数
    //     }
    // });
    // 分享给朋友圈新
    wx.updateTimelineShareData({
      title: descContent, // 分享标题
      link: lineLink, // 分享链接
      imgUrl: imgUrl,
      success: function () {
      // 设置成功
      }, cancel: function () { 
        //         // 用户取消分享后执行的回调函数
            }});
    //分享到QQ
    wx.onMenuShareQQ({
      title: shareTitle, // 分享标题
      desc: descContent, // 分享描述
      link: lineLink, // 分享链接
      imgUrl: imgUrl, // 分享图标
      success: function () { 
         // 用户确认分享后执行的回调函数
      },
      cancel: function () { 
         // 用户取消分享后执行的回调函数
      }
  });
    //分享到腾讯微博
    wx.onMenuShareWeibo({
      title: shareTitle, // 分享标题
      desc: descContent, // 分享描述
      link: lineLink, // 分享链接
      imgUrl: imgUrl, // 分享图标
      success: function () { 
         // 用户确认分享后执行的回调函数
      },
      cancel: function () { 
          // 用户取消分享后执行的回调函数
      }
  });
});
}

export { getCookie, addGoodsCart, addBuys, goBuys, CartNum, wxapi }
